A method is discussed in the publication entitled “TS 25.323 Packet Data Convergence Protocol Specification,” in which user data is transmitted between a mobile station and a network unit, the user data is combined prior to transmission into packet data units in a convergence protocol layer known as the PDCP (Packet Data Convergence Protocol) layer according to the UMTS (Universal Mobile Telecommunication System) standard, a first PDCP protocol unit in the mobile station and a second PDCP protocol unit in the network unit establishing a first logical connection.
To transmit packet data units, the sent packet data units are each numbered with a PDCP send sequence number and stored in both the mobile station and the network unit by the respective PDCP protocol unit, and the received packet data units are each counted using a PDCP receive sequence number.
Below the convergence protocol layer is a radio link control layer that is known as the RLC layer according to the UMTS standard and is also present in both the mobile station and the network unit, a first RLC protocol unit in the mobile station and a second RLC protocol unit in the network unit establishing a second logical connection.
A packet data unit is transmitted, for example, from the mobile station to the network unit by first transferring the packet data unit from the first PDCP protocol unit to the next lower first RLC protocol unit. According to the method discussed in the publication entitled “TS 25.322 Radio Link Control Specification,” the packet data units received by higher layers are numbered with an RLC send sequence number that is unique to the first RLC protocol unit and stored in the first RLC protocol unit. The RLC send sequence number is appended to the packet data unit, and the packet data unit is subsequently transmitted to the second RLC protocol unit via the second logical connection by forwarding the packet data unit from the first RLC protocol unit to lower layers, which are not relevant for the present invention, and finally transmitting them via the air interface so that they are then passed up through the layers to the second RLC protocol layer.
If the packet data unit becomes damaged during transmission from the first RLC protocol unit to the second protocol unit, the second RLC protocol unit notifies the first RLC protocol unit of the failed transmission by sending an RLC status message in which the RLC send sequence number belonging to the packet data unit is identified as having been transmitted with errors, whereupon the first RLC protocol unit retransmits the corresponding packet data unit after receiving the RLC status message.
If the packet data unit is received error-free by the second RLC protocol unit, the latter forwards the packet data unit to the next higher PDCP protocol unit and returns to the first RLC protocol unit an RLC status message in which the RLC send sequence number belonging to the packet data unit is identified as having been transmitted error-free, whereupon the first RLC protocol unit deletes the packet data unit from its memory and notifies the next-higher first PDCP protocol unit that the packet data unit was transmitted error-free, whereupon this first PDCP protocol unit also deletes the packet data unit from its memory.
The transmission of a single RLC status message for each error-free or faulty packet data unit received by the second RLC unit is discussed here by manner of example. The publication entitled “TS 25.322 Radio Link Control Specification” also discusses a number of other methods for sending and confirming received messages by the RLC protocol units.
While a logical connection is being set up or reconfigured between the first and the second RLC protocol units, a parameter for both RLC protocol units is set, specifying a period in time in which error-free transmission of a packet data unit between the RLC protocol units must be completed or the maximum number of transmission attempts by the first RLC protocol unit for a single packet data unit.
If a period of time has been specified, a timer is started the first time a packet data unit is transmitted by a first RLC protocol unit and ends only upon receipt of an RLC status message confirming the error-free transmission of this packet data unit. If the time measurement exceeds the specified period of time, no additional attempt to transmit the packet data unit is started, and the packet data unit is deleted from the memory of the first RLC protocol unit.
If a maximum number of transmission attempts was specified when setting up or reconfiguring the second logical connection, a counter having the initial value zero is started the first time a packet data unit is transmitted by the first RLC protocol unit and incremented by one each time another transmission attempt is made. If the counter is equal to the maximum number of transmission attempts, no further attempt to transmit the packet data unit is started, and the packet data unit is deleted from the memory of the first RLC protocol unit.
To notify the second RLC protocol unit that no further transmission attempts will be made and that the second RLC protocol unit should stop waiting for the corresponding packet data unit, the first RLC protocol unit sends the second RLC protocol unit an RLC discard message containing the RLC send sequence number that specifies the next packet data unit in the sequence of transmitted packet data units, for which—if any further transmitted packet data units occur in the meantime—the first RLC protocol unit has up to this point received no RLC status message confirming error-free transmission from the second RLC protocol unit.
If, upon receiving the RLC discard message, the second RLC protocol unit expects the next packet data unit in the correct sequence to have a lower RLC send sequence number than the number specified in the RLC discard message, the second RLC protocol unit adjusts the value of the RLC send sequence number it expects next to the RLC send sequence number received in the RLC discard message and no longer expects to receive any packet data units having RLC send sequence numbers lower than the number specified in the RLC discard message. The RLC send sequence number of what is now the next packet data unit expected in the correct sequence is then returned to the first RLC protocol unit in a confirmation message (RLC discard confirm).
If, contrary to the assumption of the first RLC protocol unit, a packet data unit has nevertheless been received error-free by the second RLC protocol unit (this may happen, for example, if the RLC status message that was supposed to confirm the error-free receipt of the packet data unit gets lost), the second RLC protocol unit expects, upon receiving the RLC discard message, a subsequent packet data unit in the correct sequence having the same or a higher RLC send sequence number than the number specified in the RLC discard message. In this case, an adjustment by the second RLC protocol unit is not necessary, and an RLC status message is subsequently returned to the first RLC protocol unit identifying the RLC send sequence numbers belonging to the error-free transmitted packet data units as having been transmitted error-free.